Generate an Base Derivation Key (*BDK)

Command:

Generate a *BDK and encrypt it under LMK pair 28-29 for Host storage.

Notes:

This command is fully backward compatible with the BI command in existing firmware

It has been extended to support Triple Length *BDK using Key Scheme T.

The generic Key Generation command A0 may also be used to generate a *BDK

 

Field

Length & Type

Details

COMMAND MESSAGE

Message header

m A

(Subsequently returned to the Host unchanged).

Command code

2 A

Value BI.

Delimiter

1 A

Optional. If present the following three fields must be present.  Value “;”.

Key scheme ZMK

1 A

Optional. Key scheme for encrypting key under ZMK.

Key scheme LMK

1 A

Optional. Key scheme for encrypting key under LMK.

Key check value type

1 A

Optional. Key check value calculation method

0 - KCV backwards compatible.

1 - KCV 6H.

End message delimiter

1 C

Present only if Message Trailer is present. Value X’19

Message trailer

n A

Optional. Maximum length 32 characters.

RESPONSE MESSAGE

Message header

n A

Returned to the Host unchanged.

Response code

2 A

Value BJ.

Error code

2 N

00 : No errors

13 : LMK error; report to supervisor

15 : Error in input data

*BDK

32H or 1A+32H or 1A+48H

The *BDK encrypted under LMK pair 28-29.

End message delimiter

1 C

Present only if supplied in the command message. Value X’19

Message trailer

n A

Present only if present in the command message.  Maximum length 32 characters.